.vin-calendar {
  position: relative;
  display: flex;
  flex: 1;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  color: #333;
  font-size: 16px;
  background-color: #fff;

  &.vin-calendar-tile {
    .vin-calendar-header {
      .calendar-title {
        font-size: $calendar-base-font;
      }
    }
  }

  .vin-calendar-taro {
    height: 60vh;
  }

  .popup-box {
    height: 100%;
  }

  ::-webkit-scrollbar {
    display: none;
  }

  // 头部导航
  .vin-calendar-header {
    display: flex;
    flex-direction: column;
    padding-top: 1px;
    text-align: center;
    background-color: $white;

    .calendar-title {
      font-weight: $calendar-title-font-weight;
      font-size: $calendar-title-font;
      line-height: 44px;
    }

    .calendar-top-slot {
      height: 24px;
    }

    .calendar-curr-month {
      padding: 7px 0;
      font-size: $calendar-sub-title-font;
      line-height: 22px;
    }

    .calendar-weeks {
      display: flex;
      align-items: center;
      justify-content: space-around;
      height: 36px;
      border-radius: 0 0 12px 12px;
      box-shadow: 0 4px 10px 0 rgba($color: #000, $alpha: 0.06);

      .calendar-week-item {
        &:first-of-type,
        &:last-of-type {
          color: $calendar-day67-font-color;
        }
      }
    }
  }

  // 月份
  .vin-calendar-content {
    display: block;
    flex: 1;
    width: 100%;
    overflow-y: auto;

    .calendar-months-panel {
      position: relative;
      display: block;
      box-sizing: border-box;
      width: 100%;
      height: auto;

      .viewArea {
        display: block;
      }

      .calendar-month {
        display: flex;
        flex-direction: column;
        text-align: center;
      }

      div:nth-of-type(2) {
        .calendar-month-title {
          padding-top: 0;
        }
      }

      .calendar-loading-tip {
        position: absolute;
        top: -50px;
        right: 0;
        left: 0;
        height: 50px;
        color: $text-color;
        font-size: $calendar-text-font;
        line-height: 50px;
        text-align: center;
      }

      .calendar-month-title {
        height: 23px;
        margin: 8px 0;
        line-height: 23px;
      }

      .calendar-month-con {
        overflow: hidden;

        .calendar-month-item {
          .calendar-month-day:nth-child(7n + 0),
          .calendar-month-day:nth-child(7n + 1) {
            color: $calendar-day67-font-color;
          }
        }

        .calendar-month-day {
          position: relative;
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          float: left;
          width: $calendar-day-width;
          height: $calendar-day-height;
          font-weight: $calendar-day-font-weight;

          .calendar-curr-tips {
            position: absolute;
            width: 100%;
          }

          .calendar-curr-tip-curr {
            position: absolute;
            bottom: 6px;
            width: 100%;
            font-size: 12px;
            line-height: 14px;
          }

          .calendar-day-tip {
            position: absolute;
            bottom: 6px;
            width: 100%;
            color: $calendar-primary-color;
            font-size: 12px;
            line-height: 14px;
          }

          .calendar-curr-tips-top {
            top: 6px;
          }

          .calendar-curr-tips-bottom {
            bottom: 6px;
          }

          &-active {
            color: $white !important;
            background-color: $calendar-primary-color;
            border-radius: $calendar-day-active-border-radius;

            .calendar-curr-tips {
              // color: $white !important;
              visibility: hidden;
            }

            .calendar-curr-tip-curr {
              visibility: hidden;
            }

            .calendar-day-tip {
              color: $white;
            }
          }

          &-disabled {
            color: $calendar-disable-color !important;
          }

          &-choose {
            color: $calendar-choose-font-color;
            background-color: $calendar-choose-color;
          }

          .calendar-day {
            padding: 2px 0;
            font-size: $calendar-day-font;
          }
        }
      }
    }
  }

  // 底部导航
  .vin-calendar-footer {
    display: flex;
    width: 100%;
    height: 62px;
    background-color: $white;

    .calendar-confirm-btn {
      width: 100%;
      height: 44px;
      margin: 10px 18px;
      color: $white;
      line-height: 44px;
      text-align: center;
      background: $button-primary-background-color;
      border-radius: 22px;
    }
  }
}
